function Event(){
    
    var m_target;
    var m_type;
    var m_handler;
    var m_override;
    
    var preventDefault = function( event ){
        
        if ( m_override ){ event.preventDefault(); }
    };
    
    var run = function( event ){
        
        preventDefault( event );
        
        m_handler.run();
    };
    
    var init = function(){
        
        $( m_target ).on( m_type, run );
    };
    
    this.create = function( data ){
            
        m_target    = data.target   || "#id";
        m_type      = data.type     || "event";
        m_handler   = data.handler  || function(){};
        m_override  = data.override || false;

        init();

        return this;
    };
    
    this.trigger = function(){
        
        $( m_target ).trigger( m_type );
    };
    
    return this;
}